//package com.gkym.es.service;
//
//import org.elasticsearch.action.bulk.BulkResponse;
//import org.elasticsearch.action.index.IndexResponse;
//import org.elasticsearch.action.search.SearchResponse;
//import org.elasticsearch.index.query.QueryBuilder;
//import org.elasticsearch.search.sort.SortBuilder;
//
//import java.io.IOException;
//import java.util.Map;
//
///**
// * [ RestHighLevelClient接口 ]
// *
// * @author Love丶TG
// * @version 1.0.0
// * @create 2020 年 01 月 14 日 15:04
// */
//public interface RestHighLevelService {
//
//    /// 根据QueryBuilder来查询全部的条数
//    SearchResponse idQuery(String[] indexName, String typeName, String id) throws IOException;
//
//    /// 根据QueryBuilder来查询全部的条数
//    Long getTotalRecords(String[] indexNameArray, String typeName, QueryBuilder builder) throws IOException;
//
//    /// 查询全部
//    SearchResponse findAll(String indexName, String typeName, QueryBuilder builder) throws IOException;
//
//    /// 分页
//    SearchResponse page(String[] indexNameArray, String typeName, QueryBuilder queryBuilder, int from, int size, SortBuilder sortBuilder)
//            throws IOException;
//
//    /// 批量插入数据
//    BulkResponse insert(String indexName, String typeName, Map<String, String> valueMap) throws IOException;
//
//    /// 更新- 根据id进行更新(插入时根据id进行覆盖)
//    void update(String indexName, String typeName, String id, String jsonStr) throws IOException;
//
//    /// 批量更新
//    void update(String indexName, String typeName, Map<String, String> valueMap) throws IOException;
//
//    /// 根据id进行删除
//    void delete(String indexName, String typeName, String id) throws IOException;
//
//    /// 查询所有
//    SearchResponse selectAll(String[] indexName, String typeName) throws IOException;
//
//    /// Es文档数据插入(插入前会自动生成index)
//    IndexResponse insert(String indexName, String typeName, String id, String jsonStr) throws IOException;
//
//    /// ================================
//
//    /// 创建索引
//    boolean createIndex(String index, String alias, int
//            numberOfShards, int numberOfRelicas) throws IOException;
//
//    /// 通过索引名删除索引
//    boolean deleteIndex(String index) throws IOException;
//
//    /// 判断索引是否存在
//    boolean isIndexExists(String index) throws IOException;
//}
